package main

import (
	"fmt"
	"runtime"
)

/*
*
goroutine 特性：主goroutine退出后，其他工作的goroutine也会退出
*/
func main() {
	go func() {
		defer fmt.Println("A.defer")
		func() {
			defer fmt.Println("B.defer")
			runtime.Goexit() //终止当当前goroutine
			fmt.Println("B") //不会执行
		}()
		fmt.Println("A") //不会执行
	}()

	// 死循环，目的为了不让主go退出
	for {

	}
}
